/* 
 * -----------------------------------------------------------------
 * This is the basic screen class, we can update, present, pause and
 * resume the screen, as well as dispose it.
 * 2011, by Wu Mu Xian
 * -----------------------------------------------------------------
*/

package mygame.basicgameframework;

public abstract class Screen {
	protected final Game game;
	
	// The constructor receives the Game instance
	public Screen(Game game) {
		this.game = game;
	}
	
	// update the screen state
	public abstract void update(float deltaTime);
	
	// present the screen
	public abstract void present(float deltaTime);
	
	// pause the screen
	public abstract void pause();
	
	// resume the screen
	public abstract void resume();
	
	// dispose the screen
	public abstract void dispose();
}
